move windows test suite workaround to relatedTemplate
authorJoey Hess <joeyh@joeyh.name>
Thu, 30 Jan 2025 23:06:06 +0000 (19:06 -0400)
committerJoey Hess <joeyh@joeyh.name>
Thu, 30 Jan 2025 23:06:06 +0000 (19:06 -0400)
Annex/ReplaceFile.hs
Utility/Tmp.hs

index 3af555d39dc415a5d33cac222036cf70838c94c2..5cb46b17dd7d0dbeed45308901e6fd2759c03918 100644 (file)
@@ -5,8 +5,6 @@
  - Licensed under the GNU AGPL version 3 or higher.
  -}
 
-{-# LANGUAGE CPP #-}
-
 module Annex.ReplaceFile (
        replaceGitAnnexDirFile,
        replaceGitDirFile,
@@ -59,11 +57,7 @@ replaceFile createdirectory file action = replaceFile' createdirectory file (con
 
 replaceFile' :: (RawFilePath -> Annex ()) -> RawFilePath -> (a -> Bool) -> (RawFilePath -> Annex a) -> Annex a
 replaceFile' createdirectory file checkres action = withOtherTmp $ \othertmpdir -> do
-#ifndef mingw32_HOST_OS
        let basetmp = relatedTemplate' (P.takeFileName file)
-#else
-       let basetmp = toRawFilePath "t"
-#endif
        withTmpDirIn (fromRawFilePath othertmpdir) (toOsPath basetmp) $ \tmpdir -> do
                let tmpfile = toRawFilePath tmpdir P.</> basetmp
                r <- action tmpfile
index 8e0ca1075510886c24aa9f7d30a2f72617b2f1b1..3f01a019192222e9929a8186bb7d56a111d2406a 100644 (file)
@@ -6,6 +6,7 @@
  -}
 
 {-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE CPP #-}
 {-# OPTIONS_GHC -fno-warn-tabs #-}
 
 module Utility.Tmp (
@@ -111,6 +112,7 @@ relatedTemplate :: RawFilePath -> Template
 relatedTemplate = toOsPath . relatedTemplate'
 
 relatedTemplate' :: RawFilePath -> RawFilePath
+#ifndef mingw32_HOST_OS
 relatedTemplate' f
        | len > templateAddedLength = 
                {- Some filesystems like FAT have issues with filenames
@@ -122,6 +124,11 @@ relatedTemplate' f
   where
        len = B.length f
        dot = fromIntegral (ord '.')
+#else
+-- Avoids a test suite failure on windows, reason unknown, but
+-- best to keep paths short on windows anyway.
+relatedTemplate' _ = "t"
+#endif
 
 {- When a Template is used to create a temporary file, some random bytes
  - are appended to it. This is how many such bytes can be added, maximum.